home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #3 / Amiga Plus CD - 2002 - No. 03.iso / AmigaPlus / Tools / Development / envCPP31 / compilers / stormc / rexx / compile.rexx next >
Encoding:
OS/2 REXX Batch file  |  2002-01-01  |  1.8 KB  |  85 lines

  1. /* rexx macro */
  2.  
  3. options results                             /* enable return codes     */
  4.  
  5. if (left(address(), 6) ~= "GOLDED") then    /* not started by GoldEd ? */
  6.  
  7.     address 'GOLDED.1'
  8.  
  9. 'LOCK CURRENT RELEASE=4'                    /* lock GUI, gain access   */
  10.  
  11. if (RC ~= 0) then
  12.  
  13.     exit
  14.  
  15. options failat 6                            /* ignore warnings         */
  16.  
  17. signal on syntax                            /* ensure clean exit       */
  18.  
  19. /* ------------------------- INSERT YOUR CODE HERE: -------------------- */
  20.  
  21. 'QUERY CAT'
  22.  
  23. if (RESULT = "deutsch") then do
  24.  
  25.     STRING.sSTARTINGSHELL = "Starten der StormC-Shell..."
  26.     STRING.sSTORMSHELL    = "Kann die StormC-Shell nicht starten !"
  27. end
  28. else do
  29.  
  30.     STRING.sSTARTINGSHELL = "Starting StormC-Shell..."
  31.     STRING.sSTORMSHELL    = "Can not start the StormC shell !"
  32. end
  33.  
  34. call run_stormc
  35.  
  36. 'QUERY FILE VAR=FILE'
  37.  
  38. options failat 25
  39.  
  40. address STORMSHELL 'COMPILE FILE ' || file
  41.  
  42. /* ---------------------------- END OF YOUR CODE ----------------------- */
  43.  
  44. 'UNLOCK' /* VERY important: unlock GUI */
  45. EXIT
  46.  
  47. SYNTAX:
  48.  
  49. SAY "Sorry, error line" SIGL ":" ERRORTEXT(RC) ":-("
  50. 'UNLOCK'
  51. EXIT
  52.  
  53. /* /// "run_stormc" */
  54.  
  55. run_stormc: procedure EXPOSE STRING.
  56.  
  57.     if (~show('P', 'STORMSHELL')) then do
  58.  
  59.         if (exists("stormc:stormsys/stormshell")) then do
  60.  
  61.             'REQUEST STATUS="' || STRING.sSTARTINGSHELL || '"'
  62.  
  63.             'QUERY PATH VAR=PATH'
  64.  
  65.             'QUERY SCREEN VAR=SCREEN'
  66.  
  67.             'RUN ASYNC CMD="stormc:stormsys/stormshell golded pubscreen=*"' || SCREEN || '*"" WAITPORT="STORMSHELL" SECONDS=10 STACK=16384 DIR="' || PATH || '"'
  68.  
  69.             'REQUEST STATUS=""'
  70.         end
  71.     end
  72.  
  73.     if (~show('P', 'STORMSHELL')) then do
  74.  
  75.         'REQUEST PROBLEM="' || STRING.sSTORMSHELL || '"'
  76.  
  77.         'UNLOCK'
  78.  
  79.         exit
  80.     end
  81.  
  82.     return
  83.  
  84. /* /// */
  85.